An increasing use of communications networks is for content delivery to customer premises by service providers. For example, service providers may operate hybrid Passive Optical Network (PON) and coaxial/coax network. The c.LINK Access networks derived from the MoCA (Multimedia over Coax Alliance) technology are one type of network used for such content delivery system. FIG. 1 illustrates an example of a network topology for an access network. In this network, a network controller 101 is in communication with a plurality of network nodes 103. For example, network controller 101 may be an access network controller (NC) (sometimes referred to as a Network Coordinator) managed by an Operator/Service Provider (OSP) or Multiple System Operator (MSO), such as a cable company. Network nodes 103 may comprise various Customer Premise Equipment (CPEs), such as televisions, computers, high-speed data modems, set-top boxes, or other network connected content delivery systems.
Such an access network may be arranged in a point-to-multipoint topology 102. In point-to-multipoint topology 102, network nodes 103 communicate with NC 101 and NC 101 communicates with each network node 103, but network nodes 103 may not necessarily communicate with each other. In access networks like c.LINK, hundreds of CPEs can be in communication with a single NC. Other implementations of the coax-based technologies involve in-home networks (HNs) similar to the MoCA standard. MoCA HNs use mesh topologies with multipoint-to-multipoint topologies, where multiple nodes can communicate with a plurality of other nodes. MoCA HNs are usually 16 nodes or fewer, including the NC.
In an access network, downstream (DS) traffic is transmitted from an NC to one, some, or all of the CPEs. Upstream (US) traffic is transmitted from CPEs to the NC. Upstream traffic is generally transmitted one CPE at a time (sometimes referred to as upstream bursts). When an NC has information (sometimes referred to as “packets,” or “datagrams”) to send to CPEs, it can simply schedule and transmit such downstream traffic. Accordingly, little or no preparation and interaction is required between the NC and (destination) network nodes (or CPEs). However, upstream bursts require more preparation and interaction between network nodes and the NC in order for the NC to schedule traffic properly. Packets that originate at the CPE are destined for the NC (e.g., for processing by the NC, for relay onto the Internet, etc.) When a CPE has data to send, the CPE must inform the NC and wait for an upstream transfer to be scheduled.
In c.LINK and MoCA networks, access to the medium is controlled by the NC. The NC divides the transmission time into units referred to as Media Access Plan (MAP) cycles, and the NC further schedules transmission during the MAP cycles. FIG. 2 illustrates examples of such MAP cycles 203, 205. Each MAP cycle 203, 205 is divided into time slots. During each MAP cycle 203, 205, an NC may transmit a MAP packet 201, 202 that provides a schedule to all the network nodes indicating when, within the next MAP cycle, each packet (including the next MAP packet 202) will be sent. Networks may apply other scheduling methods as well. For example, the NC may send individual (e.g., unicast) grants to each network node or CPE.
FIG. 2 is also representative of a timing diagram that illustrates the timing relationship between MAPs 201, 202 and MAP cycles 203, 205. MAP 201 indicates the allocation of time slots within MAP cycle 205. Accordingly, each MAP schedules the communication activity for the next MAP cycle (including all communications between the NC and the network nodes). Only one such “next MAP cycle” 205 is shown in FIG. 2, however, it should be understood that in various implementations, MAP 202 schedules all communications for the next MAP cycle (not shown) that follows MAP cycle 205.
Reservation requests (RRs) 207, 209, 211 are one particular type of packet that MAPs 201, 202 are responsible for scheduling. Six such RRs are shown in first MAP cycle 203 of FIG. 2, starting with first RR 207 and ending with last RR 209. One RR 211 is shown in the second MAP cycle 205. Each RR may be sent from one network node 103. Each RR 207, 209 may contain one or more Reservation Request Elements (RREs). Each RRE communicates a desire on the part of a network node 103 from which an RR 207, 209 was sent to transmit one MoCA packet. Each RR 207, 209 allows a network node 103 to communicate to NC 101 that network node 103 has data packets it wishes to send. Furthermore, each RR 207, 209 indicates the packet length (from which the packet duration can be determined), packet priority, Flow ID and so on for those data packets. The NC uses this information to schedule “transmission slots” during which a network node can transmit those data packets it wishes to send. The NC 101 then communicates that schedule by generating and transmitting a MAP, e.g., MAP 201, which includes transmission slot assignments for next MAP cycle 205.
During a “data packet transmission phase,” an RR is either “granted” (i.e., scheduled) or discarded by the NC. The RR is granted depending on whether there is sufficient network bandwidth to service the request. It should be noted that for the purpose of this description, “granted” means that an NC assigns a transmission slot to the packet associated with an RR to allow the network node that generated the request to transmit the associated packet during the assigned transmission slot in a next MAP cycle. The NC then transmits a MAP to indicate the schedule to all of the network nodes of the network, including the requesting node. Each requesting node then transmits the packets in a MAC cycle according to the schedule indicated by the MAP. Hence, a CPE can inform the NC (or other such scheduler) when it has traffic to send (US).